package com.thwj.project.app.api.param;

import com.thwj.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

@Data
@ApiModel("活动请求入参")
public class ActivityParam {


    /** 主键 */
    @ApiModelProperty("主键")
    private Long id;

    @ApiModelProperty("活动类型 不同的入口创建 1=：常规活动,2=：派对")
    private Integer type;

    @ApiModelProperty("是否公开展示")
    private Boolean showPublic;

    @ApiModelProperty("活动分类")
    private Long categoryId;

    /** 详细地址 */
    @ApiModelProperty("详细地址")
    private String address;
    @ApiModelProperty("详细地址名称")
    private String name;

    @ApiModelProperty("经度")
    private Double longitude;

    @ApiModelProperty("维度")
    private Double latitude;

    @ApiModelProperty("活动标题 限定30字以内")
    private String title;

    @ApiModelProperty("活动封面图 当用户是官方用户这个字段对应的入口放开")
    private String coverPic;

    @Excel(name = "图片列表", readConverterExp = "多=个逗号隔开")
    private String picList;

    @ApiModelProperty("活动形式 1=：不限,2=：限女生,3=：限男生 4 自定义")
    private Integer formType;

    @ApiModelProperty("报名人数")
    private Integer maxSignUpCount;

    @ApiModelProperty("最多女生人数 只有活动形式自定义 该字段才生效")
    private Integer maxWomanCount;

    @ApiModelProperty("最多男生人数 只有活动形式自定义 该字段才生效")
    private Integer maxManCount;

    /** 开始时间 */
    @ApiModelProperty("开始时间")
    private Date startDate;

    /** 结束时间 */
    @ApiModelProperty("结束时间")
    private Date endDate;

    @ApiModelProperty("无责取消种类 参照枚举值 ActivityCancelBeforeTypeEnum")
    private Integer cancelFreeType;

    @ApiModelProperty("介绍文案")
    private String describeContent;

    @ApiModelProperty("介绍图片")
    private String describePic;

    @Excel(name = "收费类型", readConverterExp = "1=AA收费：,2=：免费")
    @ApiModelProperty(" 每人费用 1=AA收费：,2=：免费 如果是免费 则 价格 优惠类型 支付渠道 优惠金额 都不需要展示")
    private Integer chargeType;

    @Excel(name = "支付渠道", readConverterExp = "1=：线上支付,2=：线下收费")
    @ApiModelProperty("1=：线上支付,2=：线下收费")
    private Integer payWay;

    @ApiModelProperty("价格（元/单人）")
    private BigDecimal price;

    @ApiModelProperty("优惠类型 1=：女生优惠,.=. 目前只有女生优惠")
    private Integer discountType;

    @ApiModelProperty("优惠金额 目前只有 discountType = 1 时需要指定该值")
    private BigDecimal discountedPrice;

    @ApiModelProperty("联系人")
    private String contactName;

    @ApiModelProperty("联系人微信")
    private String contactWechat;

    @ApiModelProperty("联系电话")
    private String contactPhone;

    /** 报名截止时间 */
    /*@ApiModelProperty("报名截止时间")
    private String signUpEndDate;*/

    /** 取消原因 */
    @ApiModelProperty("取消原因")
    private String cancelReason;


    @ApiModelProperty("商户id")
    private Long merchantId;

    @ApiModelProperty("产品id")
    private Long productId;

}
